package com.shujia.wyh.day21;

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

/*
        public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>
        哈希表和链表实现的Map接口，具有可预测的迭代次序。 这种实现不同于HashMap，它维持于所有条目的运行双向链表。
        哈希表保证了元素的键的唯一性
        双链表保证元素的键的迭代次序

 */
public class LinkedHashMapDemo {
    public static void main(String[] args) {
        //创建集合对象
        LinkedHashMap<String, String> lhm = new LinkedHashMap<>();

        //向集合中添加元素
        lhm.put("1001", "张三");
        lhm.put("1002", "李四");
        lhm.put("1003", "王五");
        lhm.put("1002", "赵六");
        lhm.put("1001", "张三");
        lhm.put("1004", "张三");
        lhm.put("1005", "张三");

        //遍历集合
        Set<Map.Entry<String, String>> entries = lhm.entrySet();
        for (Map.Entry<String, String> keyValue : entries) {
            String key = keyValue.getKey();
            String value = keyValue.getValue();
            System.out.println(key + ":" + value);
        }
    }
}
